GAE Tutorial - Guestbook 環境設定

目的

這篇是為了電腦環境無法直接跑 GAE Tutorial 的開發者而寫的,如果你的電腦環境可以直接跑 GAE Tutorial,你可以直接跳過這一篇。

假如你使用 Docker ,你將可以跳過 GuestBook 教學的 "Before you begin" 的第二步驟,也就是安裝 Google Cloud SDK 的部分。

Docker 安裝、抓 Image

請參考 Docker 安裝、抓 Image 這一篇文章。

啟動 local server 及基本操作流程

請先確定你已經安裝完 Docker 、並抓完 image

1. 首次啟動 local server:新建並啟動 container,並在 container 中運作 dev_appserver.py
$ docker run -it -v ~/src/appengine-guestbook-python:/src -p 8080:8080 -p 8000:8000 \
    --name guestbook local_server bash
  • -v 指定資料夾的映射,語法為 -v HOST-PATH:CONTAINER-PATH,可以給零到多個。指令中的 ~/src/appengine-guestbook-python 請替換成你的 appengine-guestbook-python 專案的絕對路徑。
  • -p 指定 port 映射,語法為 -p HOST-PORT:CONTAINER-PORT,可以給零到多個。指令中映射的 8080 和 8000為 dev_appserver.py 預設綁定的 port,把它轉出來,之後才能用http://localhost:8080連到。

  • --name 是給 container 一個易讀的名稱。

  • -it -t 配置虛擬終端(pseudo-tty), -i 則要容器的 stdin 保持打開(在foreground開啟),兩個選項經常一起下。指令中我們把兩個一起給,就變成 -it

  • 最後的 bash 是要執行的指令,所以這行指令執行後,就會進入這個 container 的 bash,會看到類似下面的提示輸入

    root@dcdb54e27362:/#
    
2. 登入 GAE。執行本行後複製得到的網址到瀏覽器,取得驗證碼後,再貼回 shell 內。
root@dcdb54e27362:/# gcloud auth login
3. 現在你得到可以執行 dev_appserver.py 的環境了
root@dcdb54e27362:/# dev_appserver.py /src/ --host=:: --admin_host=::

這個就是 GAE tutorial 網頁裡面,"Building and running locally" 第一步驟裡要你執行的指令,不帶後面的 --host--admin_host 選項是連不上的喔!

4. 離開 container,exit 後會回到本機的 shell
root@dcdb54e27362:/# exit
5. 下次要再使用這個 container 時,要先啟動,然後在這個 container 執行 bash,會再度進到 docker 的 bash
$ docker start guestbook
$ docker exec -it guestbook bash
$ docker stop guestbook

results matching ""

    No results matching ""